1. Field of the Invention
The present invention relates to an apparatus for visual programming with screen flow to design, create and inspect a program having a visual user interface with a flow chart referred to as a screen flow.
2. Description of the Related Art
Until now, there have been provided development tools for programs having a visual user interface for programs as developed by Visual C++, Visual Basic or the like.
When a program is developed with such a development tool, a method for creating an application program with a visual user interface (hereinafter referred to as a "visual program") by a development support tool comprises first constructing one screen by creating program parts such as buttons individually on the screen and combining the created program parts, and then linking the program parts constructing the screen to each other, thereby characterizing each of the program parts individually, and finally completing the program. In other words, a visual program is developed by a method (bottom-up) of piling up parts from the bottom.
A programmer creating such a visual program first creates a screen acting as a base and then describes code for each of the program parts on the screen acting as the base.
Application programs generally have multiple user interfaces and multiple user interface screens in many cases. In order to develop a program, many screens need to be created so that a programmer repeats the same processes for creating each screen in order to create the multiple screens. In other words, the procedure of the processes for constructing the screen by first creating the screen and then connecting codes to the screen must be repeated. These processes are cumbersome and programmers may easily lose the motivation to work for creating other screens even after having created a few screens.
Further, relationships between each of those multiple screens created in the manner as described hereinabove should be explicitly described by the program code. For example, even where the relationship is attempted to change in a simple visual program where, when a button B of a screen 1 is clicked by a mouse button, a screen 2 is generated and, when a button D of the screen 2 is clicked, a screen 3 is generated, it is not easy to change the relationship between any two screens because the corresponding codes should also be changed.
As described hereinabove, it is difficult to see the link between the screens in a visual program having multiple screens at the time of creating-the program. Thus, it is desired that the relationships between each of the multiple screens be described separately as a flow of processes upon creating the visual program having multiple screens; however, a programmer must understand the flow by a specification of the program.
Further, the conventional work to write a program code for generating a certain screen from other screens should be manually carried out one by one. If a wrong screen identifier were to be written in error, the problem may be caused to occur that a different screen is generated. In addition, when the visual program created is inspected, the inspection is usually carried out by comparing it with the specification of the program. Each code must be visually inspected without such a specification.
A conventional way of creating the visual program suffers from the disadvantage that it is difficult to understand the association of the screens with each other. Further, even if a specification relating to the linking of the screens is created, work to create program codes from the specification should be done manually so that errors may be likely to occur during manual work.
Furthermore, where the visual program created is to be inspected, the development of each screen should be compared with a specification without screen flow by manual work or an actual program is tested without any such specification. Hence, errors may be likely to occur.